﻿@using  Csla.Blazor
@using  Csla.Rules

<div class="top-row pl-4 navbar navbar-dark">
  <a class="navbar-brand" href="">ProjectTracker.Ui.Blazor</a>
  <button class="navbar-toggler" @onclick="ToggleNavMenu">
    <span class="navbar-toggler-icon"></span>
  </button>
</div>

<div class="@NavMenuCssClass" @onclick="ToggleNavMenu">
  <ul class="nav flex-column">
    <li class="nav-item px-3">
      <NavLink class="nav-link" href="" Match="NavLinkMatch.All">
        <span class="oi oi-home" aria-hidden="true"></span> Home
      </NavLink>
    </li>
    <li class="nav-item px-3">
      <NavLink class="nav-link" href="projects">
        <span class="oi oi-plus" aria-hidden="true"></span> Projects
      </NavLink>
    </li>
    <li class="nav-item px-3">
      <NavLink class="nav-link" href="resources">
        <span class="oi oi-plus" aria-hidden="true"></span> Resources
      </NavLink>
    </li>
    <AuthorizeView Policy="@(CslaPolicy.GetPolicy(AuthorizationActions.EditObject, typeof(ProjectTracker.Library.Admin.RoleEditList)))">
      <li class="nav-item px-3">
        <NavLink class="nav-link" href="roles">
          <span class="oi oi-plus" aria-hidden="true"></span> Roles
        </NavLink>
      </li>
    </AuthorizeView>
  </ul>
</div>

@code {
  private bool collapseNavMenu = true;

  private string NavMenuCssClass => collapseNavMenu ? "collapse" : null;

  private void ToggleNavMenu()
  {
    collapseNavMenu = !collapseNavMenu;
  }
}
